perm filename RECORD.DEF[1,3]3 blob
sn#194032 filedate 1975-12-27 generic text, type T, neo UTF8
EXTERNAL RECORD!CLASS $CLASS(INTEGER RECRNG,HNDLER,RECSIZ;
INTEGER ARRAY TYPARR;
STRING ARRAY TXTARR);
COMMENT SYSTEM DEFAULT HANDLER PROCEDURE;
EXTERNAL RECORD!POINTER(ANY!CLASS) PROCEDURE $REC$(INTEGER OP;
RECORD!POINTER(ANY!CLASS) R);
COMMENT PROCEDURE TO CALL A RECORD'S HANDLER PROCEDURE;
EXTERNAL RECORD!POINTER(ANY!CLASS) PROCEDURE $RECFN(INTEGER OP;
RECORD!POINTER(ANY!CLASS) R);
COMMENT OP VALUES FOR $REC$;
DEFINE ALLOCATE!RECORD = 1;
DEFINE MARK!SUBFIELDS = 4;
DEFINE DELETE!RECORD = 5;
EXTERNAL PROCEDURE $RECGC;
DEFINE MIN$SB = 3;
DEFINE MAX$SB = 16;
EXTERNAL INTEGER ARRAY $SPCAR[MIN$SB:MAX$SB];
DEFINE $SB!BLKSIZ=0; COMMENT SIZE OF BLOCKS;
DEFINE $SB!TRIGGER=1; COMMENT COUNT DOWN FOR RECGC;
DEFINE $SB!TGRMIN=2; COMMENT MINIMUM NUMBER PERMITTED FOR TRIGGER SETTING;
DEFINE $SB!TINUSE=3; COMMENT TOTAL NUMBER OF RECORDS IN USE;
DEFINE $SB!TUNUSED=4; COMMENT TOTAL UNUSED BUFFERS;
DEFINE $SB!FBLIST=5; COMMENT FREE BUFFER LIST;
DEFINE $SB!FULLS=6; COMMENT FULL BUFFER LIST;
DEFINE $SB!CULPRT=7; COMMENT COUNTED UP EACH TIME GC IS TRIGGERED BY THIS SPACE;
COMMENT GET AT FIELDS USING MEMORY. E.G., MEMORY[$SPCAR[4]+$SB!TRIGGER] ;